type 'a list = 'a Lazy_list.list = LNil_ | LCons_ of 'a Lazy.t * 'a list Lazy.t
val ( @ ) :
  ('a Lazy_list.list Lazy.t -> 'a Lazy_list.list Lazy.t -> 'a Lazy_list.list)
  lazy_t
type 'a camlinternal_array_ = 'a array
type 'a array = 'a Lazy.t camlinternal_array_
type 'a camlinternal_option_ = 'a option
type 'a option = 'a Lazy.t camlinternal_option_
type out_channel = Pervasives.out_channel
exception Sys_error of string lazy_t
exception Failure of string lazy_t
exception Invalid_argument of string lazy_t
exception Match_failure of (string lazy_t * int lazy_t * int lazy_t) lazy_t
exception Assert_failure of (string lazy_t * int lazy_t * int lazy_t) lazy_t
exception Undefined_recursive_module of
  (string lazy_t * int lazy_t * int lazy_t) lazy_t
val camlinternal_import_exn_ : exn -> exn
val failwith : (string lazy_t -> 'a) lazy_t
val invalid_arg : (string lazy_t -> 'a) lazy_t
val raise : (exn Lazy.t -> 'a) lazy_t
val compare : ('a Lazy.t -> 'a Lazy.t -> int) lazy_t
val ( <> ) : ('a Lazy.t -> 'a Lazy.t -> bool) lazy_t
val ( < ) : ('a Lazy.t -> 'a Lazy.t -> bool) lazy_t
val ( > ) : ('a Lazy.t -> 'a Lazy.t -> bool) lazy_t
val ( <= ) : ('a Lazy.t -> 'a Lazy.t -> bool) lazy_t
val ( >= ) : ('a Lazy.t -> 'a Lazy.t -> bool) lazy_t
val ( = ) : ('a Lazy.t -> 'a Lazy.t -> bool) lazy_t
val min : ('a Lazy.t -> 'a Lazy.t -> 'a) lazy_t
val max : ('a Lazy.t -> 'a Lazy.t -> 'a) lazy_t
val ( == ) : ('a Lazy.t -> 'a Lazy.t -> bool) lazy_t
val ( != ) : ('a Lazy.t -> 'a Lazy.t -> bool) lazy_t
val not : (bool Lazy.t -> bool) lazy_t
val ( & ) : (bool Lazy.t -> bool Lazy.t -> bool) lazy_t
val ( && ) : (bool Lazy.t -> bool Lazy.t -> bool) lazy_t
val ( or ) : (bool Lazy.t -> bool Lazy.t -> bool) lazy_t
val ( || ) : (bool Lazy.t -> bool Lazy.t -> bool) lazy_t
val ( ~- ) : (int Lazy.t -> int) lazy_t
val succ : (int Lazy.t -> int) lazy_t
val pred : (int Lazy.t -> int) lazy_t
val ( + ) : (int Lazy.t -> int Lazy.t -> int) lazy_t
val ( - ) : (int Lazy.t -> int Lazy.t -> int) lazy_t
val ( * ) : (int Lazy.t -> int Lazy.t -> int) lazy_t
val ( / ) : (int Lazy.t -> int Lazy.t -> int) lazy_t
val ( mod ) : (int Lazy.t -> int Lazy.t -> int) lazy_t
val abs : (int Lazy.t -> int) lazy_t
val ( land ) : (int Lazy.t -> int Lazy.t -> int) lazy_t
val ( lor ) : (int Lazy.t -> int Lazy.t -> int) lazy_t
val ( lxor ) : (int Lazy.t -> int Lazy.t -> int) lazy_t
val lnot : (int Lazy.t -> int) lazy_t
val ( lsl ) : (int Lazy.t -> int Lazy.t -> int) lazy_t
val ( lsr ) : (int Lazy.t -> int Lazy.t -> int) lazy_t
val ( asr ) : (int Lazy.t -> int Lazy.t -> int) lazy_t
val min_int : int lazy_t
val max_int : int lazy_t
val ( ~-. ) : (float Lazy.t -> float) lazy_t
val ( +. ) : (float Lazy.t -> float Lazy.t -> float) lazy_t
val ( -. ) : (float Lazy.t -> float Lazy.t -> float) lazy_t
val ( *. ) : (float Lazy.t -> float Lazy.t -> float) lazy_t
val ( /. ) : (float Lazy.t -> float Lazy.t -> float) lazy_t
val ( ** ) : (float Lazy.t -> float Lazy.t -> float) lazy_t
val exp : (float Lazy.t -> float) lazy_t
val acos : (float Lazy.t -> float) lazy_t
val asin : (float Lazy.t -> float) lazy_t
val atan : (float Lazy.t -> float) lazy_t
val atan2 : (float Lazy.t -> float Lazy.t -> float) lazy_t
val cos : (float Lazy.t -> float) lazy_t
val cosh : (float Lazy.t -> float) lazy_t
val log : (float Lazy.t -> float) lazy_t
val log10 : (float Lazy.t -> float) lazy_t
val sin : (float Lazy.t -> float) lazy_t
val sinh : (float Lazy.t -> float) lazy_t
val sqrt : (float Lazy.t -> float) lazy_t
val tan : (float Lazy.t -> float) lazy_t
val tanh : (float Lazy.t -> float) lazy_t
val ceil : (float Lazy.t -> float) lazy_t
val floor : (float Lazy.t -> float) lazy_t
val abs_float : (float Lazy.t -> float) lazy_t
val mod_float : (float Lazy.t -> float Lazy.t -> float) lazy_t
val frexp : (float Lazy.t -> float * int) lazy_t
val ldexp : (float Lazy.t -> int Lazy.t -> float) lazy_t
val modf : (float Lazy.t -> float * float) lazy_t
val float : (int Lazy.t -> float) lazy_t
val float_of_int : (int Lazy.t -> float) lazy_t
val truncate : (float Lazy.t -> int) lazy_t
val int_of_float : (float Lazy.t -> int) lazy_t
val infinity : float lazy_t
val neg_infinity : float lazy_t
val nan : float lazy_t
val max_float : float lazy_t
val min_float : float lazy_t
val epsilon_float : float lazy_t
val classify_float : (float Lazy.t -> fpclass) lazy_t
val ( ^ ) : (string Lazy.t -> string Lazy.t -> string) lazy_t
val int_of_char : (char Lazy.t -> int) lazy_t
val char_of_int : (int Lazy.t -> char) lazy_t
val ignore : ('a Lazy.t -> unit) lazy_t
val fst : (('a Lazy.t * 'b) Lazy.t -> 'a) lazy_t
val snd : (('a * 'b Lazy.t) Lazy.t -> 'b) lazy_t
val string_of_bool : (bool Lazy.t -> string) lazy_t
val bool_of_string : (string Lazy.t -> bool) lazy_t
val string_of_int : (int Lazy.t -> string) lazy_t
val int_of_string : (string Lazy.t -> int) lazy_t
val string_of_float : (float Lazy.t -> string) lazy_t
val float_of_string : (string Lazy.t -> float) lazy_t
val stdin : in_channel lazy_t
val stdout : out_channel lazy_t
val stderr : out_channel lazy_t
val open_out_gen :
  (open_flag list Lazy.t -> int Lazy.t -> string Lazy.t -> out_channel)
  lazy_t
val open_out : (string Lazy.t -> out_channel) lazy_t
val open_out_bin : (string Lazy.t -> out_channel) lazy_t
val flush : (out_channel Lazy.t -> unit) lazy_t
val flush_all : (unit Lazy.t -> unit) lazy_t
val output_char : (out_channel Lazy.t -> char Lazy.t -> unit) lazy_t
val output_string : (out_channel Lazy.t -> string Lazy.t -> unit) lazy_t
val output :
  (out_channel Lazy.t -> string Lazy.t -> int Lazy.t -> int Lazy.t -> unit)
  lazy_t
val output_byte : (out_channel Lazy.t -> int Lazy.t -> unit) lazy_t
val output_binary_int : (out_channel Lazy.t -> int Lazy.t -> unit) lazy_t
val output_value : (out_channel Lazy.t -> 'a Lazy.t -> unit) lazy_t
val seek_out :
  (out_channel Lazy.t lazy_t -> int Lazy.t lazy_t -> unit) lazy_t
val pos_out : (out_channel Lazy.t -> int) lazy_t
val out_channel_length : (out_channel Lazy.t -> int) lazy_t
val close_out : (out_channel Lazy.t -> unit) lazy_t
val close_out_noerr : (out_channel Lazy.t -> unit) lazy_t
val set_binary_mode_out : (out_channel Lazy.t -> bool -> unit) lazy_t
val open_in_gen :
  (open_flag list Lazy.t -> int Lazy.t -> string Lazy.t -> in_channel) lazy_t
val open_in : (string Lazy.t -> in_channel) lazy_t
val open_in_bin : (string Lazy.t -> in_channel) lazy_t
val input_char : (in_channel Lazy.t -> char) lazy_t
val input :
  (in_channel Lazy.t -> string Lazy.t -> int Lazy.t -> int Lazy.t -> int)
  lazy_t
val really_input :
  (in_channel Lazy.t -> string Lazy.t -> int Lazy.t -> int Lazy.t -> unit)
  lazy_t
val input_line : (in_channel Lazy.t -> string) lazy_t
val input_byte : (in_channel Lazy.t -> int) lazy_t
val input_binary_int : (in_channel Lazy.t -> int) lazy_t
val input_value : (in_channel Lazy.t -> 'a) lazy_t
val seek_in : (in_channel Lazy.t -> int Lazy.t -> unit) lazy_t
val pos_in : (in_channel Lazy.t -> int) lazy_t
val in_channel_length : (in_channel Lazy.t -> int) lazy_t
val close_in : (in_channel Lazy.t -> unit) lazy_t
val close_in_noerr : (in_channel Lazy.t -> unit) lazy_t
val set_binary_mode_in : (in_channel Lazy.t -> bool Lazy.t -> unit) lazy_t
val print_char : (char Lazy.t -> unit) lazy_t
val print_string : (string Lazy.t -> unit) lazy_t
val print_int : (int Lazy.t -> unit) lazy_t
val print_float : (float Lazy.t -> unit) lazy_t
val print_endline : (string Lazy.t -> unit) lazy_t
val print_newline : (unit Lazy.t -> unit) lazy_t
val prerr_char : (char Lazy.t -> unit) lazy_t
val prerr_string : (string Lazy.t -> unit) lazy_t
val prerr_int : (int Lazy.t -> unit) lazy_t
val prerr_float : (float Lazy.t -> unit) lazy_t
val prerr_endline : (string Lazy.t -> unit) lazy_t
val prerr_newline : (unit Lazy.t -> unit) lazy_t
val read_line : (unit Lazy.t -> string) lazy_t
val read_int : (unit Lazy.t -> int) lazy_t
val read_float : (unit Lazy.t -> float) lazy_t
module LargeFile :
  sig
    val seek_out : (out_channel Lazy.t -> int64 Lazy.t -> unit) lazy_t
    val pos_out : (out_channel Lazy.t -> int64) lazy_t
    val out_channel_length : (out_channel Lazy.t -> int64) lazy_t
    val seek_in : (in_channel Lazy.t -> int64 Lazy.t -> unit) lazy_t
    val pos_in : (in_channel Lazy.t -> int64) lazy_t
    val in_channel_length : (in_channel Lazy.t -> int64) lazy_t
  end
val ref : ('a Lazy.t -> 'a ref) lazy_t
val ( ! ) : ('a ref Lazy.t -> 'a) lazy_t
val ( := ) : ('a ref Lazy.t -> 'a Lazy.t -> unit) lazy_t
val incr : (int ref Lazy.t -> unit) lazy_t
val decr : (int ref Lazy.t -> unit) lazy_t
val format_of_string : ('a lazy_t -> 'a) lazy_t
val string_of_format : ('a lazy_t -> 'a) lazy_t
val at_exit : ((unit lazy_t -> unit) Lazy.t -> unit) lazy_t
val do_at_exit : (unit Lazy.t -> unit) lazy_t
val exit : (int Lazy.t -> 'a) lazy_t
